const express = require('express')
const morgan = require('morgan') // 第三方中间件
const cors = require('cors') // 第三方中间件
const router = require('./router') // 路由中间件
const errorHandler = require('./middleware/error-handler')
require('./model')// MongoDB数据库连接

const app = express()
// [中间件] 日志输出
app.use(morgan('dev'))

// [中间件] 解析请求体
app.use(express.json())
app.use(express.urlencoded())

// [中间件] 跨域
app.use(cors())

app.use('/api', router)

const PORT = process.env.PORT || 3000

// 挂在统计异常处理中间件
app.use(errorHandler())

app.listen(PORT, () => {
  console.log(`Server is running at http://localhost:${PORT}`)
})